package com.view.refresh

import android.view.View

/**
 * @describe
 * @author: lixiaopeng
 * @Date: 2019-06-14
 */
interface IFreshLayout {

    /**
     * 刷新的实体类
     */
    val freshView: View

    /**
     * 滑动回调
     *
     * @param moveOffset 滑动距离
     * @param isRefreshing 是否正在刷新
     */
    fun onMove(moveOffset: Float, isRefreshing: Boolean)

    /**
     * 正在刷新回调
     */
    fun onRefreshing()

    /**
     * 刷新完成回调
     */
    fun onRefreshFinish()

    /**
     * 刷新控件的高度
     */
    val viewHeight: Int

    /**
     * 超过这个高度开始刷新
     */
    val freshOffset: Float
}